/**
 * 
 */
package com.worksmap.core.service;

import java.util.Date;
import java.util.List;

import com.taobao.api.domain.Order;
import com.worksmap.core.entity.SellerConfig;
import com.worksmap.core.entity.TaoBaoOrder;
import com.worksmap.core.entity.TaoBaoSeller;
import com.worksmap.core.entity.TaoBaoTrade;
import com.worksmap.core.entity.Trade;

/**
 * @author jack
 * 2013.12.18
 */
public interface TradeService {
	
	/**
	 * 获取所有订单(淘宝接口限制)
	 * 搜索当前会话用户作为卖家已卖出的交易数据（只能获取到三个月以内的交易信息） 
	 * jack
	 * 2013-12-18
	 */
	public List<Order> getAllOrderList();
	
	/**
	 * 获取买家已评价，但是卖家未评价订单
	 * jack
	 * 2013-12-18
	 */
	public List<TaoBaoTrade> getSellerNotRateTradeList(TaoBaoSeller seller, Date beginDate, Date endDate) ;
	
	/**
	 * 获取交易成功但是买家未评价订单
	 * jack
	 * 2013-12-18
	 */
	public List<Order> getBuyerNotRateOrderList();
	
	/**
	 * 方法简介：保存订单
	 * jack
	 * 2013-12-30
	 */
	public boolean saveTrade(Trade trade);
	
	/**
	 * 方法简介：查询订单（子订单）详情
	 * jack
	 * 2013-12-31
	 */
	public List<TaoBaoOrder> getOrderListByTid(Trade trade);
	
	/**
	 * 方法简介：更新订单的部分字段
	 * jack
	 * 2014-1-3
	 */
	public boolean updateTrade(Trade trade, String...fields);
	
	/**
	 * 方法简介：获取交易成功的订单
	 * jack
	 * 2014-1-3
	 */
	public List<Trade> getTradeBySellerConfig(TaoBaoSeller seller, SellerConfig sellerConfig);
}
